#ifndef __M3508_SMC_H__
#define __M3508_SMC_H__

void smc_init(smc_controller* smc,float k);
void smc_data_init(DJI_Motor_ControlTypeDef* motor, uint8_t motor_type, uint8_t control_type, uint8_t MOTOR_GROUP);
void rm_motor_smc_init(DJI_Motor_ControlTypeDef* motor, uint8_t motor_type, CAN_HandleTypeDef* hcan, uint8_t MOTOR_GROUP);
void rm_motor_speed_smc(DJI_Motor_ControlTypeDef* motor, uint16_t id, int16_t target_speed);
void rm_motor_speed_smc_ctrl(DJI_Motor_ControlTypeDef* motor, uint16_t id, int16_t speed);
void speed_smc_ctrl(DJI_Motor_ControlTypeDef* motor, int16_t speed_1, int16_t speed_2, int16_t speed_3, int16_t speed_4, uint8_t motor_type);

#endif